package com.finger.forest.http.presenter;

import com.finger.forest.base.BasePresenter;
import com.finger.forest.base.BaseView;

import java.util.List;
import java.util.Map;

import okhttp3.MultipartBody;
import okhttp3.RequestBody;

/**
 * @author jzj
 * @date 2020/11/3
 * @desc
 */
public interface RegisterContract {
    abstract class presenter extends BasePresenter<BaseView> {

        /**
         * 用户登录
         *
         * @param username 用户名
         * @param password 密码
         * @param isonline 状态 0：离线；1：在线
         */
        public abstract void userLogin(String username, String password, String isonline);

        /**
         * 首页用户消息列表
         *
         * @param maps
         */
        public abstract void userNoticeList(Map<String, Object> maps);

        /**
         * 首页用户消息已读
         *
         * @param maps
         */
        public abstract void userNoticeRead(Map<String, Object> maps);

        /**
         * 首页用户消息置顶
         *
         * @param maps
         */
        public abstract void userNoticeTop(Map<String, Object> maps);

        /**
         * 首页用户消息刪除
         *
         * @param maps
         */
        public abstract void userNoticeDelete(Map<String, Object> maps);

        /**
         * 提交工作日志
         *
         * @param maps
         */
        public abstract void submitWorkLog(Map<String, Object> maps);

        /**
         * 查询工作日志
         *
         * @param maps
         */
        public abstract void queryWorkLog(Map<String, Object> maps);

        /**
         * 道路信息采集
         *
         * @param maps
         */
        public abstract void roadInformationInsert(Map<String, Object> maps);

        /**
         * 新增火场资源信息
         *
         * @param maps
         */
        public abstract void fireInformationInsert(Map<String, Object> maps);

        /**
         * 用户道路资源信息查询loadRoadinformation
         *
         * @param maps
         */
        public abstract void loadRoadinformation(Map<String, Object> maps);

        /**
         * 查询资源信息列表loadFireinformation
         *
         * @param maps
         */
        public abstract void loadFireinformation(Map<String, Object> maps);

        /**
         * 查询用户所有资源信息列表loadResourceInformation
         *
         * @param maps
         */
        public abstract void loadResourceInformation(Map<String, Object> maps);

        /**
         * SOS uploadSos
         *
         * @param maps
         */
        public abstract void uploadSos(Map<String, RequestBody> maps, List<MultipartBody.Part> part);

        /**
         * 上传资源采集uploadResource
         *
         * @param maps
         */
        public abstract void uploadResource(Map<String, RequestBody> maps, List<MultipartBody.Part> part,
                                            List<MultipartBody.Part> part1);

        /**
         * 新增用户信息insertUserInfo
         *
         * @param maps
         */
        public abstract void insertUserInfo(Map<String, RequestBody> maps, MultipartBody.Part part);

        /**
         * 查询个人信息
         *
         * @param maps
         */
        public abstract void loadPersonInfo(Map<String, Object> maps);

        /**
         * 获取资源类型loadResourceType
         *
         * @param maps
         */
        public abstract void loadResourceType(Map<String, Object> maps);

        /**
         * 用户管理loadUserManager
         *
         * @param maps
         */
        public abstract void loadUserManager(Map<String, Object> maps);

        /**
         * 编辑（删除）用户deleteUser
         *
         * @param maps
         */
        public abstract void deleteUser(Map<String, Object> maps);

        /**
         * 查询通讯信息voiceintercomByGrui
         *
         * @param maps
         */
        public abstract void voiceintercomByGrui(Map<String, Object> maps);

        /**
         * 新增通讯消息insertVoiceintercom
         *
         * @param maps
         */
        public abstract void insertVoiceintercom(Map<String, RequestBody> maps, MultipartBody.Part part);

    }
}
